package xin.marcher.module.construction.service;

import xin.marcher.module.construction.domain.dto.FrontCategoryDTO;
import xin.marcher.module.construction.domain.dto.FrontCategoryResultDTO;
import xin.marcher.module.construction.domain.dto.FrontCategoryTreeDTO;
import xin.marcher.module.construction.domain.request.FrontCategoryRequest;
import xin.marcher.module.construction.domain.request.QueryCategoryRequest;

import java.util.List;

/**
 * 前台类目信息
 */
public interface FrontCategoryService {

    /**
     * 查询类目树
     *
     * @param request
     * @return java.util.List<xin.marcher.module.construction.domain.dto.FrontCategoryTreeDTO>
     */
    List<FrontCategoryTreeDTO> selectTree(QueryCategoryRequest request);

    /**
     * 查询当前类目的子节点
     *
     * @param request
     * @return java.util.List<xin.marcher.module.construction.domain.dto.FrontCategoryDTO>
     */
    List<FrontCategoryDTO> selectChild(QueryCategoryRequest request);

    /**
     * 保存类目信息
     *
     * @param request
     * @return xin.marcher.module.construction.domain.dto.FrontCategoryResultDTO
     */
    FrontCategoryResultDTO saveFrontCategory(FrontCategoryRequest request);
}
